<!--
<h1>XORP Frequently Asked Questions</h1>

<h2>Questions</h2>

<ol>

  <li><a href="#what">What exactly is XORP?</a>

  <li><a href="#procon">What are the pros and cons of XORP?</a>

  <li><a href="#existing">There are plenty of vendors with modular
  routing software so why is XORP interesting?</a>

  <li><a href="#impact">What is the impact on the router market of open
  source routing platforms?</a>

  <li><a href="#pronounce">How do you pronounce XORP?</a>

  <li><a href="#compare">How does XORP compare with Zebra/Quagga?</a>

</ol>

<hr noshade>

<h2>Answers</h2>

<ol>
  <li class="answer"><a name="what">What exactly is XORP?</a>

  <P> XORP currently provides a set of routing protocol
  implementations, an extensible programming API, and configuration
  tools.  The supported protocols are OSPFv2, BGP, RIP, PIM-SM, OLSR,
  and IGMP/MLD.
  IPv4 and IPv6 are both supported.  The list of protocols and
  features will hopefully grow as more people start <a
  href="contributing.html">contributing</a> to the project.

  <li class="answer"><a name="procon">What are the pros and cons of XORP?</a>

  <p>Pros:
    <ul>

      <li> The code is open source (mostly under the GPL license).
      People can freely use it, customize it, make their own product
      out of it, etc.</li>

      <li> The code runs on commodity PC hardware and operating
      systems.</li>

      <li> The modular design and separation of functional entities into
      distinct processes means that failure of one component does not cause
      the whole router to fail or malfunction.</li>

      <li> The modular design enables future integration with hardware
      forwarding planes.</li>

      <li> XORP components communicate with a flexible IPC scheme.
      Components can run within a single host or be distributed across
      multiple hosts.  There is scope for building a distributed
      router from low-cost PC hardware.</li>

    </ul>

    <p>Cons:
    <ul>

      <li> Software forwarding plane limits forwarding rate. </li>

      <li> The number of hardware and software features are less
      than many commercial vendors. </li>

      <li> Support options do not exist like the big vendors.  The
      project core does not have the resources to provide this level
      of support.  If a company wants to commercialize XORP, this
      would be one area of differentiation for the commerical product.</li>

    </ul>
    <p>
    </li>

    <li class="answer"><a name="existing">There are plenty of vendors with modular routing software so why is XORP interesting?</a>

      <p> There are plenty of reasonably priced router/routing-switch
          options.  However, you have no control over the software
          they run.  If there's a problem, you are at the mercy of the
          vendor to get a fix.  Unless you are a major corporation,
          you may find it hard to get any action.  With XORP and other
          open source routing platforms you have the
          source code, you can find and fix problems yourself, and you
          can add features you want.

      <p> If you don't like working with code yourself, you can submit
          XORP bug reports in a public forum.  Since no developer
          likes outstanding bug reports this puts pressure on the
          developers to fix issues and also shows areas where people
          might usefully contribute effort.
    </li>

     <li class="answer"><a name="impact">What is the impact on the router market of open source routing platforms?</a>

     <p> XORP (and other open source routers) may eat into the router
         market at the edges - there is potential to provide cheap and
         reasonably performing edge boxes.  It may also find a home in
         logging and analysis products since there is code that speaks
         assorted protocols - it is not much work to change from
         protocol speaker to protocol reporter.  This is one area
         where other open source routing products find themselves used
         in large enterprises and with ISPs today.
    </li>

    <li class="answer"><a name="pronounce">How do you pronouce XORP?</a>

    <p> The locals pronounce it "Zorp".  Note to self: when choosing a name for a project
        pick a name people can say already :-)
    </li>

    <li class="answer"><a name="compare">How does XORP compare with
	  Zebra/Quagga?</a>

	<p> XORP and Zebra/Quagga compete in the same space.  In
	particular, we both provide open-source implementations of
	major Internet routing protocols.  However, we differ in a
	number of ways.  XORP's emphasis is more clearly on
	extensibility, and this is reflected in the XORP architecture
	in many ways.

	<p> From the operator's point of view, while XORP aims to
	provide an extensible multi-process architecture, it also
	provides a unified user interface to the user operator, so the
	operator should not need to know about how XORP is implemented
	internally.

	<p> From the developer's point of view, Zebra/Quagga is
	implemented in C, whereas XORP is implemented in C++.  In
	Zebra/Quagga IPv4 and IPv6 protocol instances use different
	code bases. In XORP protocol instances supporting IPv4 and
	IPv6 are built from a common code base, which greatly
	simplifies the code maintenance.

	<p> From the network researcher's point of view, XORP provides
	a large set of common C++ class libraries that should
	simplify the development of research code.  We expect XORP
	will provide an excellent platform for network research.

	<p> In summary, both XORP and Zebra/Quagga provide good solid
	routing protocol implementations.

      </li>

</ol>
-->
